Taken:
=2 vervangen door >1alpinotreebank.dact, alpinotreebank.zipalpino_ds.dtd: alternatief voor <nattr/> en <rattr/>
<data name></data>alpino2agenscyp2alpdact_attribalpinodsalud_vorfeld
alpino2agens_in_order=true|false_vorfeld en _in_order klaar zijndact_attrib toevoegen aan AlpinoGraph in DockerIn de DTD:
<!ELEMENT node (data*,(node*|ud)) >
<!ELEMENT data (#PCDATA) >
<!ATTLIST data
name CDATA #IMPLIED >
Voorbeelden gebruik in AlpinoGraph:
<data name="ag:rel:bool:primary">false</data> <data name="ag:node:bool:vorfeld"/> <!-- true --> <data name="ag:node:text:kleur">groen</data> <data name="ag:node:int:score">12</data>
Prefix ag: is voor het onderscheid als er door andere toepassingen
ook extra data wordt toegevoegd.
Een namespace gebruiken voor een extensie werkt niet met alleen maar de standaard DTD. Je moet alsnog de extensie definieren in de DTD, of in het XML-document, bijvoorbeeld zo:
<?xml version="1.0"?> <!DOCTYPE alpino_ds SYSTEM "alpino_ds.dtd" [ <!ELEMENT ag:data EMPTY > <!ATTLIST ag:data xmlns:ag CDATA #FIXED "urn:alpinograph.let.rug.nl" ag:name CDATA #REQUIRED ag:class (node|rel) "node" ag:type (text|int|bool) "bool" ag:value CDATA #IMPLIED > <!ELEMENT node ((ag:data)*,(node*|ud)) > ]> <alpino_ds version="1.10"> <parser build="Alpino-x86_64-linux-glibc2.5-21514-sicstus" date="2019-08-28T18:15:57+02:00" cats="1" skips="0"/> <node begin="0" end="11" id="0" rel="top" cat="top"> <ag:data xmlns:ag="urn:alpinograph.let.rug.nl" ag:class="rel" ag:name="foo" ag:type="text" ag:value="bar" /> <node begin="0" end="10" id="1" rel="--" cat="smain">
Bovenstaande kan gevalideerd worden met:
xmllint --load-trace --loaddtd --noout --postvalid file.xml
En dan zit je nog met het probleem van software die niet makkelijk met namespaces overweg kan.
Misschien is het gebruik van een namespace niet het goede middel:
Briefly stated, the primary purpose of XML namespaces is to define a mechanism for uniquely naming elements and attributes so that different vocabularies can be mixed in an XML document without name conflicts.
Bron: XML and Namespaces in XML Family of Specifications: A Practical Guide, Kenneth B. Sall, 2003
Namespaces lijken vooral nuttig als je meerdere publieke xml-formaten wilt combineren.