Zastanawiałem się, co oznacza „profil” w Wikipedii :
XML jest profilem standardowego SGML ISO, a większość XML pochodzi z SGML bez zmian.
Zgodnie z http://xml-tips.assistprogramming.com/sgml-xml-html-xhtml-all-together.html :
HTML jest podzbiorem SGML.
XML jest wysoce funkcjonalnym podzbiorem SGML.
XHTML rozszerza i dzieli HTML.
Czy „jeden jest podzbiorem drugiego” oznacza, że kod w pierwszym jest również poprawny pod względem składniowym i semantycznie taki sam jak w drugim?
Podobnie jak w przypadku elementarnej teorii mnogości,
- czy HTML, XML i XHTML to wszystkie różne podzbiory SGML?
- czy XML i HTML prawie się nie przecinają?
- czy XHTML jest nadzbiorem zarówno XML, jak i HTML?
- Czy mogę spodziewać się bardziej zwięzłego i jasnego podsumowania różnic w celach czterech i / lub kiedy ich użyć, niż powyższy link? Jestem naprawdę zdezorientowany co do wyraźnej granicy między ich zamierzonymi celami.
Zgodnie z http://xml-tips.assistprogramming.com/sgml-xml-html-xhtml-all-together.html :
XML nie jest pojedynczym językiem znaczników. Jest to metaljęzyk pozwalający użytkownikom zaprojektować własny język znaczników.
Zastanawiałem się, jak rozumieć XML i HTML to oba podzbiory SGML, ale HTML to język znaczników, podczas gdy XML nie jest językiem znaczników, ale metaliem do projektowania języków znaczników?
Czy zarówno SGML, jak i XHTML są jednocześnie metalingiem do projektowania języka znaczników?
- Jak w obu linkach wspomina się, że HTML jest aplikacją SGML, a także podzbiorem SGML, a XHTML jest aplikacją XML. Zastanawiam się, jakie są różnice między powiedzeniem, że jeden język jest zastosowaniem innego, a jeden język jest podzbiorem innego?
Zacznę od stwierdzenia, że XML jest podzbiorem SGML, a następnie XHTML jest podzbiorem XML.
HTML oparty jest na SGML, ale z pewnymi innymi regułami. XHTML jest w zasadzie zaktualizowaną wersją HTML, ale z pewnymi zasadami umieszcza się go, więc jest to również poprawny XML.
Kilka uwag na temat działania standardu HTML 5 z innymi specyfikacjami. http://dev.w3.org/html5/spec/Overview.html#compliance-with-other-specifications
Nie jestem pewien różnic między SGML a XML ani tego, kiedy użyjesz jednego nad drugim. Chociaż XML wydaje się być powszechnie używany.
W przypadku XHTML i HTML lepiej jest zawsze używać XHTML. Błędy są łatwiejsze do znalezienia i jako bonus będzie to również poprawny XML.
źródło
Ich historia może cię tutaj oświecić. Samo mówienie o metajęzykach, profilach, podzbiorach i instancjach jest trochę suche! Postaram się, aby było to krótkie i proste.
SGML ewoluował z GML (Generalized Markup Language), który został opracowany przez 3 inżynierów IBM w latach 60. XX wieku jako sposób przechowywania skomplikowanych dokumentów prawnych, rządowych, przemysłowych i wojskowych. GML był stopniowo udoskonalany, aż w 1986 r. Został znormalizowany jako SGML.
GML / SGML nie jest językiem per se . Jest to raczej metajęzyk , tj. Język definiujący języki zgodne lub „zasady”, według których formatowanie różnych skomplikowanych dokumentów może być zaprojektowane w ogólnie spójny sposób. Każdy inny typ dokumentu definiowałby zatem własny zestaw nazw znaczników zgodny z SGML plus powiązane atrybuty, a także wszelkie zdefiniowane formalne publiczne identyfikatory / przestrzenie nazw, schematy itp. Każdy taki zdefiniowany format stał się zatem odrębnym językiem przechowywania danych dla dokumentu typ dotyczy. Ze względu na spójność wszystkich dokumentów zgodnych z regułami SGML możliwe jest pisanie kodu do zestawiania / przetwarzania danych w tych dokumentach i przesyłania danych między dokumentami o wspólnym formacie.
SGML okazał się zbyt skomplikowany w przypadku licznych dokumentów o mniejszych rozmiarach. Tak więc XML został opracowany w latach 1996-2006 jako podzbiór ( profil słowa faktycznie oznacza to samo co podzbiór) SGML, który mógł obsługiwać zarówno małe, jak i duże dokumenty. Będąc podzbiorem metajęzyka, XML sam w sobie jest metajęzykiem, choć prostszym. Można powiedzieć, że XML stanowi podstawę do zaprojektowania formatów dokumentów odpowiednich zarówno do łatwego przechowywania, jak i przesyłania między systemami w sieci.
Po standaryzacji SGML, ale zanim został on uproszczony do formatu XML, pojawił się internet, a wraz z nim potrzeba formatu dokumentów, który umożliwiłby łatwe przesyłanie i wyświetlanie zarówno dokumentów, jak i luźnych danych. Rezultatem był język HTML, instancja (czasami nazywana aplikacją ) SGML z 18 wstępnie zdefiniowanymi znacznikami, zapewniająca ustandaryzowany sposób wyświetlania różnych typów danych, np. Tekst, obrazy, audio itp. HTML wykorzystał SGML, pozwalając niektóre elementy, aby pominąć tagi początkowe lub końcowe. Kolejne wersje HTML dodawały do niego nowe tagi i atrybuty, a niektóre z nich stały się nieaktualne. Do HTML 5 wprowadzono zmiany w HTML, aby zawsze pozostawał językiem potomnym SGML.
Po standaryzacji XML pojawiła się jego instancja o nazwie XHTML, która połączyła istniejące nazwy znaczników HTML z rygorem XML w zakresie zamykania znaczników, przestrzeni nazw, schematów itp. XHTML początkowo miał nadzieję, że będzie przydatny do przechowywania, przesyłania i wyświetlania danych. Wydawało się, że ma zamiar zastąpić HTML jako najczęstszy sposób wyświetlania materiałów internetowych - dopóki HTML 5 nie wyszedł. HTML 5 miał pewne funkcje składniowe, które wykraczały poza te zdefiniowane w SGML, aby zapewnić bogatsze wyświetlanie danych, szczególnie w przypadku witryn z multimediami. Z biegiem czasu dodano do HTML 5 dodatkowe funkcje, które jeszcze bardziej wzbogaciły jego wykorzystanie do wyświetlania / wykorzystania danych do tego stopnia, że jest mało prawdopodobne, aby kiedykolwiek zostały zastąpione przez nowe wersje XHTML, przynajmniej jeśli chodzi o wyświetlanie danych. Chociaż standardy dla HTML i XHTML są opracowywane przez grupy robocze W3C, rzeczywista propagacja tych języków „w terenie” jest dokonywana przez progresywnych projektantów stron internetowych i nie ma bardziej postępowych niż ci pracujący w sektorze mediów (reklama / PR / marketing): wystarczy spojrzeć na kreatywność witryn agencji reklamowych w porównaniu do innych stron. Ten sektor naprawdę przeszedł na nowy język HTML 5, zachwycony wykorzystaniem swoich możliwości w zakresie SVG, audio, wideo inowe interfejsy API . Gotowe przyjęcie HTML 5 doprowadziło szybko do jego popularności wśród projektantów stron internetowych, proces ten został przyspieszony przez internetową wymianę umiejętności i sztuczek na YouTube i różnych innych stronach. Pojawiła się zaktualizowana wersja XHTML, XHTML5, ale tak naprawdę nie jest to ścisła pochodna XML, ale raczej wersja HTML5 z serializacją XML. Wydaje się, że tylko niewielka część witryn ma do tego jakiś cel.
Oto historia tych języków danych. Mam nadzieję, że pomoże ci to rozróżnić ich znaczenie i cel. Filozoficznie ta historia pokazuje, w jaki sposób podstawowe narzędzie wspomagające (SGML) dla nowej technologii (Internetu) może w nowym środowisku o coraz bardziej zróżnicowanych wymaganiach przekroczyć swoje pierwotne granice, a jednocześnie stać się koncepcyjnie prostsze, bardziej wszechstronne i wpływowo silniejsze.
źródło
Zasadniczo w świecie standardów „profil” normy to wybór opcji, które oferuje norma: na przykład, jeśli norma pozwala na kodowanie dokumentów w UTF-8 lub UTF-16, profil standardu może wymagać należy je zakodować w UTF-8. Termin „podzbiór” ma bardzo podobne znaczenie; chociaż prawdopodobnie termin „profil” jest nieco szerszy.
źródło